A processing device may be based on an out of order (OOO) architecture. An OOO-based processing device may execute instructions in an order based on the availability of input data rather than by the original order of the instructions as provided by a program. By using such an OOO scheme, the processing device may make use of instruction cycles that would otherwise be idle while data is retrieved for the next instruction in a program.